После того как мы определились с дизайном будущего шаблона и создали необходимые для его функционирования файлы (об этом мы говорили в предыдущей статье) самое время приступить к наполнению специального установочного файла templateDetails.xml, который так же называют «манифест-файл». Данный файл просто необходим для любого устанавливаемого расширения Joomla 3, а не только нашего шаблона.
Создание любого шаблона Joomla 3 начинается помимо прочего именно с создания и наполнения данного файла. Итак, открываем наш не так давно созданный файл templateDetails.xml и приступаем к его наполнению. В самом начале файла необходимо добавить блок кода, который будет содержать информацию о нашем шаблоне – дату создания, версию, имя и электронный адрес автора, информацию о лицензии и авторских правах, а так же описание создаваемого шаблона.
Информационный блок кода установочного xml файла
Данный информационный блок может выглядеть следующим образом:
<?xml version="1.0" encoding="utf-8"?>
<extension version="3.8" type="template" client="site">
<name>Joom4all</name>
<creationDate>Октябрь 2017</creationDate>
<author>Joom4all.ru</author>
<authorEmail>Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра.</authorEmail>
<authorUrl>http://joom4all.ru</authorUrl>
<copyright>Некая информация об авторских правах (С)</copyright>
<license>Лицензионная информация, по которой будет распространяться данный шаблон</license>
<version>1.0.0</version>
<description>Самостоятельно созданный шаблон для сайта Joom4all.ru</description>
Думаю, суть информационного блока вполне понятна – в первой строке мы указываем версию xml и кодировку, следующие теги давайте разберем подробнее:
- extension – в данном теге указываем версию Joomla, для которой предназначено данное расширение, в моем случае это версия 3.8. Далее указываем, что данное расширение у нас будет шаблоном (type="template") и не просто шаблоном, а шаблоном для сайта (client="site"). Если шаблон планируется для панели управления, то указывается это следующим образом - client="administrator";
- name – имя нашего шаблона;
- creationDate – дата создания, можно писать в различных форматах (например, 13.10.2017 или Октябрь 2017);
- author – название данного тега говорит само за себя, в нем мы указываем имя автора;
- authorEmail – адрес электронной почты автора шаблона;
- authorUrl – адрес сайта разработчика или разработчиков шаблона;
- copyright – информация по авторским правам;
- license – некая информация о лицензии, по которой будет распространяться шаблон;
- version – версия расширения, в нашем случае версия шаблона;
- description – краткое описание создаваемого шаблона.
Для наглядности посмотрите на скриншот кода в установочном xml файле:
С данным блоком информационного характера разобрались, как видите, ничего сложного нет. Теперь необходимо указать установщику, какие файлы и папки используются в нашем шаблоне.
Блок файлов и папок
Тут сложностей так же нет, каждый файл обозначаем тегами filename, а каждую папку тегами folder, и все это дело оборачиваем тегом files. Выглядит все это дело следующим образом:
<files> <filename>index.php</filename> <filename>templateDetails.xml</filename> <filename>template_preview.png</filename> <filename>template_thumbnail.png</filename> <filename>favicon.ico</filename> <folder>css</folder> <folder>html</folder> <folder>images</folder> <folder>js</folder> <folder>fonts</folder> <folder>language</folder> </files>
И скриншот:
Таким образом, мы перечислили все файлы, которые присутствуют в шаблоне и подлежат копированию на сервер. Однако Вы можете заметить, что мы не указывали никакие вложенные файлы, которые могут присутствовать в папках css, language и так далее. Все правильно, тут нет никакой ошибки, все вложенные файлы и папки будут скопированы автоматически, а нам надо лишь указать все то, что находится в корневом каталоге.
Информация о позициях для модулей
Осталось указать только информацию о позициях модулей, которые будут присутствовать в нашем шаблоне. Количество доступных позиций можете создавать по своему усмотрению, для начала я создам 6 позиций, в дальнейшем их количество всегда можно будет увеличить или сократить. Добавляем в наш файл, следующий код:
<positions> <position>position-0</position> <position>position-1</position> <position>position-2</position> <position>position-3</position> <position>position-4</position> <position>position-5</position> </positions>
Синтаксис таков – все доступные позиции модулей заключены в блок positions, а каждая отдельная позиция находится в теге position. Вместо имени позиции, например «position-0» можно написать что угодно. Но я рекомендую оставить, так как есть, в дальнейшем, когда мы будем говорить о локализации шаблона, мы создадим для каждого имени свой перевод.
Завершается установочный файл templateDetails.xml закрывающимся тегом </extension>. В итоге общий код нашего установочного файла будет выглядеть следующим образом:
<?xml version="1.0" encoding="utf-8"?>
<extension version="3.8" type="template" client="site">
<name>Joom4all</name>
<creationDate>Октябрь 2017</creationDate>
<author>Joom4all.ru</author>
<authorEmail>Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра.</authorEmail>
<authorUrl>http://joom4all.ru</authorUrl>
<copyright>Некая информация об авторских правах (С)</copyright>
<license>Лицензионная информация, по которой будет распространяться данный шаблон</license>
<version>1.0.0</version>
<description>Самостоятельно созданный шаблон для сайта Joom4all.ru</description>
<files>
<filename>index.php</filename>
<filename>templateDetails.xml</filename>
<filename>template_preview.png</filename>
<filename>template_thumbnail.png</filename>
<filename>favicon.ico</filename>
<folder>css</folder>
<folder>html</folder>
<folder>images</folder>
<folder>js</folder>
<folder>fonts</folder>
<folder>language</folder>
</files>
<positions>
<position>position-0</position>
<position>position-1</position>
<position>position-2</position>
<position>position-3</position>
<position>position-4</position>
<position>position-5</position>
</positions>
</extension>
На этом редактирование данного файла можно завершить, скажу сразу, что это только основная часть того что может содержать данный файл. В дальнейшем мы его будем дополнять, и усовершенствовать, а самое интересное то, что это все можно будет делать уже после установки шаблона.
Теперь можно приступить к установке нашего шаблона. Для этого необходимо заархивировать все файлы и папки шаблона в zip архив. И установить его стандартным способом через панель управления. После установки мы получим стандартное сообщение, что шаблон успешно установлен:
Теперь давайте перейдем в раздел «Расширения»->«Шаблоны» и посмотрим, что у нас там имеется:
Можно убедиться, что шаблон действительно установлен корректно, картинки и описание отображается. Все работает!
На этом данная статья подошла к концу, в следующей статье мы несколько усложним наш установочный файл, добавим разделы, отвечающие за локализацию, разберем, что такое локализация шаблона и научимся работать с языковыми константами.